
#ifndef LOADED_FILE_H

#define LOADED_FILE_H

#include "generic_table.h"
#include "source_line.h"

class LoadedFile
{
public:
//	LoadedFile();
	~LoadedFile();
	LoadedFile(const char * fileName, int id);

	int GetNextCharacter();
	int LookNextCharacter();
	int LookNextCharacter(int count);
	int RewindCharacter();
	int RewindCharacter(int count);
	void RewindToBeginning();

	int GetCurentFileID();
	int GetCurrentLine();
	int GetCurrentColumn();


private:
	GenericTable<SourceLine> * sourceLines;
	char * fileName;
	int fileID;
	int currentRow;
	int currentColumn;

	int MoveFor(int count);

};

#endif
